// pages/login/login.js
const app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    canIUse: wx.canIUse('button.open-type.getUserInfo'),
    userInfo:{},//用户基本信息
    openId:"",
  },
  
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {

  },



  bindGetUserInfo: function (res) {
 
    if (res.detail.userInfo) {
      //用户按了允许授权按钮
      var that = this;     
      var userInfo = res.detail.userInfo;
      that.setData({
        userInfo:userInfo
      })
      //微信登录获取用户openid
      wx.login({
        success(res) {
          if (res.code) {
            wx.showLoading({
              title: '加载中',
            })

            //获取到code 发起网络请求 获取openid
            app.util.request({
              url: "login/getOpenId",
              method:"post",
              data:{
                code: res.code
              },
              success:function(r){
                
                wx.hideLoading();
                var that2 = that;
                //微信登录，访问后台获取用户id
                wx.showLoading({
                  title: '加载中',
                })
                app.util.request({
                  url: "login/wxLogin",
                  method:"post",
                  data:{
                    nickName: userInfo.nickName,
                    userName: userInfo.nickName,
                    sex:userInfo.gender,
                    avatar:userInfo.avatarUrl,
                    openId: r.data.data.openid
                  },
                  success:function(result){
                    wx.hideLoading();
                    if(result.data.code == 200){
                    
                      var appletLoginUserInfo = result.data.data;
                      wx.setStorage({//将登录的用户信息存入本地缓存
                        key: 'appletLoginUserInfo',
                        data: appletLoginUserInfo,
                      })

                      app.globalData.userInfo = appletLoginUserInfo;
                   
                    
                      wx.reLaunch({
                        url: '/pages/index/index',
                      })
                    }else{
                      wx.showToast({
                        title: '系统异常',
                        icon:'none'
                      })
                    }
                    
                  },
                  fail:function(res){
                    wx.showToast({
                      title: '请求后台失败',
                      icon:'none'
                    })
                  }
                }
                
                )


              },
              fail:function(res){
                console.log(res)
                wx.showToast({
                  title: '网路异常,获取openid失败',
                  icon:'none'
                })
              }
            })
          } else {
            console.log('登录失败！' + res.errMsg)
          }
        }
      })



      //授权成功后,通过改变 isHide 的值，让实现页面显示出来，把授权页面隐藏起来

      that.setData({

        isHide: false

      });

    } else {

      //用户按了拒绝按钮

      wx.showModal({

        title: '警告',

        content: '您点击了拒绝授权，将无法进入小程序，请授权之后再进入!!!',

        showCancel: false,

        confirmText: '返回授权',

        success: function (res) {

          // 用户没有授权成功，不需要改变 isHide 的值

          if (res.confirm) {

            console.log('用户点击了“返回授权”');

          }
 
        }

      });

    }

   },



  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    return {
      title: "卡片集",
      path: '/pages/cards/cards'
    }
  }
})